

/**
 * split() 方法用于把一个字符串分割成字符串数组。
 * url.split('?')得到数组：
 * ['网址','数据参数']
 *
 * url.split('?')[1].split('&')得到数组：
 * ['key=value','key=value',...]
 */
 function queryURLParam(url){
    let isUrl = url.toString() //保证所有字符都是String类型
    let obj = {};
    if(isUrl.indexOf("?") !== -1) {  //判断是否有参数
        let arr = isUrl.split('?')[1].split('&')
        for (let i = 0; i < arr.length; i++) {
            let cell = arr[i].split('=')
            obj[cell[0]] = cell[1];
        }
    }
     return obj;

}
var url = 'wwww.wx.com?name=王昭君&id=001';
console.log('queryURLParam: ',queryURLParam(url));


/**

方法二:使用正则

 [^?&=]代表除了?&=之外的任意字符一到多次 ：[^?=&#]+
*/
function queryURLParamByRegExp(url){
    var isUrl = url.toString() //保证所有字符都是String类型
    let obj = {}  //接收数据对象
    isUrl.replace(/([^?=%#]+)=([^?=%#]+)/g, function (...[, $1, $2]) {
        obj[$1] = $2
    })
    isUrl.replace(/#([^?=%#])/g, function (...[, $1]) {
        obj['HASH'] = $1
    })
    return obj

}



var str="wwww.wx.com?name=12%age=23"
console.log('queryURLParamByRegExp: ',queryURLParamByRegExp(str));



